Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

3 Stron V  < 1 2 3  
Reply to this topicStart new topic
> MySQL i logowanie, Prosze o pomoc w prostym skrypcie
Wescik
post
Post #41





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 23.03.2004
Skąd: Mrągowo

Ostrzeżenie: (0%)
-----


Kod sprawdzałem na php4 i php5 i na obu jest to samo, poprostu cosik z baza chyba jest nie tak zaraz poprobuj inne uprawnienia nadac dla konta
Go to the top of the page
+Quote Post
filuniu
post
Post #42





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 25.04.2005

Ostrzeżenie: (0%)
-----


ja także miałem problemy z tym skryptem ale google i troche dumania pomaga załączam all dzialające skrypty Coyot sory za zmiany ... (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

index.php
  1. <?
  2.  
  3. $mysql_host = &#092;"host\";
  4. $mysql_login = &#092;"login\";
  5. $mysql_haslo = &#092;"haslo\";
  6. $mysql_baza = &#092;"baza1\";
  7. $mysql_tabela = &#092;"logowanie\";
  8.  
  9. // **************************************************
  10. // ********** wylogowanie i zalogowanie z ustaleniem sesji...
  11. // **************************************************
  12.  
  13. $login = $_POST[&#092;"login\"];
  14. $haslo = $_POST[&#092;"haslo\"];
  15.  
  16. if ($_GET[&#092;"login\"]==\"koniec\") { // wylogowanie
  17. session_unset();session_destroy();
  18. } else if ($login<>&#092;"\" and $haslo<>\"\") {
  19. $haslo = md5($haslo);
  20. if ($baza = mysql_connect($mysql_host, $mysql_login, $mysql_haslo)) {
  21. if (mysql_select_db($mysql_baza)) {
  22. $wynik=mysql_query(&#092;"SELECT * FROM $mysql_tabela WHERE
  23. login='$login' and haslo='$haslo' and status=5&#092;");
  24. if (mysql_num_rows($wynik)==1) {
  25. $dane=mysql_fetch_array($wynik);
  26. $_SESSION[&#092;"zalogowany\"]=\"tak\";
  27. $_SESSION[&#092;"login\"]=$dane[\"login\"];
  28. $_SESSION[&#092;"imie\"]=$dane[\"imie\"];
  29. $_SESSION[&#092;"email\"]=$dane[\"email\"];
  30. }
  31. } else echo &#092;"Nie można połączyć się z bazą\";
  32. mysql_close($baza);
  33. }
  34. }
  35. ?>
  36.  
  37. <table border=\"1\" width=\"100%\">
  38. <tr><td valign=\"top\" width=\"200\">
  39.  
  40. <p>
  41. lewy bok strony
  42. </p>
  43.  
  44. <?
  45.  
  46. // **************************************************
  47. // ********** panel formularza do zalogowania i wylogowania
  48. // **************************************************
  49.  
  50. if ($_SESSION['zalogowany']==&#092;"tak\") {
  51. echo &#092;"<p>Witaj <b>\".$_SESSION[\"login\"].\"</b></p>\";
  52. echo &#092;"<br><a href=\"index.php?login=koniec\">wyloguj się</a>\";
  53. echo &#092;"<br><a href=\"zmiana.php\">zmień hasło</a>\";
  54. } else {
  55.  
  56. echo ('
  57. <form action=\"index.php\" method=\"post\">
  58. <table>
  59. <tr>
  60. <td align=\"right\">login:&nbsp;</td>
  61. <td><input type=\"text\" name=\"login\" /></td>
  62. </tr>
  63. <tr>
  64. <td align=\"right\">hasło:&nbsp;</td>
  65. <td><input type=\"password\" name=\"haslo\" /></td>
  66. </tr>
  67. <tr>
  68. <td colspan=\"2\" align=\"right\">
  69. <input type=\"submit\" value=\"zaloguj\" /></td>
  70. </tr>
  71. </table>
  72. </form>
  73. <a href=\"rejestracja.php?opcja=przypomnij\">przypomnij hasło</a></br />
  74. <a href=\"rejestracja.php\">ZAREJESTRUJ SI!</a>
  75. koniec ');}
  76. ?>
  77.  
  78. </td><td valign=\"top\">
  79.  
  80. <p>
  81. prawy bok strony...
  82. </p>
  83. <p>
  84.  
  85. </p>
  86.  
  87. <?
  88.  
  89. if ($_SESSION[&#092;"zalogowany\"] == \"tak\" ) {
  90. echo &#092;"<p>TEN tekst widzi tylko zalogowany użytkownik! </p>\";
  91. echo &#092;"<p>TEN tekst widzi tylko zalogowany użytkownik! </p>\";
  92. echo &#092;"<p>TEN tekst widzi tylko zalogowany użytkownik! </p>\";
  93. echo &#092;"<p>TEN tekst widzi tylko zalogowany użytkownik! </p>\";
  94.  
  95.  
  96.  
  97. } 
  98. ?>
  99.  
  100. </td>
  101. <tr>




rejestracja.php
  1. <?
  2.  
  3. $mysql_host = &#092;"host\";
  4. $mysql_login = &#092;"login\";
  5. $mysql_haslo = &#092;"haslo\";
  6. $mysql_baza = &#092;"baza1\";
  7. $mysql_tabela = &#092;"logowanie\";
  8. $twoj_adres = &#092;"mmeil\";
  9.  
  10. $opcja = trim($_REQUEST[&#092;"opcja\"]);
  11.  
  12. if ($opcja==&#092;"test\") {
  13.  
  14. // **************************************************
  15. // ********** 1. sprawdzenie danych i dodanie uzytkownika
  16. // **************************************************
  17.  
  18. $login = htmlspecialchars(stripslashes(trim($_POST[&#092;"login\"])), ENT_QUOTES);
  19. $haslo = htmlspecialchars(stripslashes(trim($_POST[&#092;"haslo\"])), ENT_QUOTES);
  20. $email = htmlspecialchars(stripslashes(trim($_POST[&#092;"email\"])), ENT_QUOTES);
  21. $imie = htmlspecialchars(stripslashes(trim($_POST[&#092;"imie\"])), ENT_QUOTES);
  22.  
  23. if (strlen($login)<3 or strlen($login)>50
  24. or !eregi(&#092;"^[a-zA-Z0-9_.]+$\",$login)) { $blad++;
  25. echo &#092;"<span style=\"color:red;\">Login musi mieć od 3 do 50 znaków
  26. bez polskich liter i spacji!</span><br />&#092;";
  27. } else {
  28. if ($baza = mysql_connect($mysql_host, $mysql_login, $mysql_haslo)) {
  29. if (mysql_select_db($mysql_baza)) {
  30.  $wynik=mysql_query(&#092;"SELECT * FROM $mysql_tabela WHERE login='$login'\");
  31. } else echo &#092;"Nie można połączyć się z bazą\";
  32. mysql_close($baza);
  33. } else echo &#092;"Nie można połączyć się z serwerem MySQL\";
  34. if (mysql_num_rows($wynik)<>0) { $blad++;
  35. echo &#092;"<span style=\"color:red;\">Login już został przez kogoś użyty!.
  36. Zaproponuj inny!</span><br />&#092;";
  37. }
  38. }
  39.  
  40. if (strlen($haslo)<6 or strlen($haslo)>50
  41.  or !eregi(&#092;"^[a-zA-Z0-9]+$\",$haslo)) { $blad++;
  42. echo &#092;"<span style=\"color:red;\">Hasło musi mieć od 6 do 50 znaków
  43. bez polskich liter i spacji!</span><br />&#092;";
  44. }
  45.  
  46. if (!eregi(&#092;"^[0-9a-z_.-]+@([0-9a-z-]+.)+[a-z]{2,4}$\",$email)) { $blad++;
  47. echo &#092;"<span style=\"color:red;\">E-mail nie został
  48. podany prawidłowo!</span><br />&#092;";
  49. }
  50.  
  51. if ($blad==0) {
  52. $kod = uniqid(rand());
  53. $haslo = md5($haslo); // zaszyfrowanie hasla
  54. if ($baza = mysql_connect($mysql_host, $mysql_login, $mysql_haslo)) {
  55. if (mysql_select_db($mysql_baza)) {
  56. $wynik = mysql_query(&#092;"INSERT INTO $mysql_tabela
  57. VALUES('$login', '$haslo', '$kod', 1, NOW(), '$email', '$imie')&#092;");
  58. } else echo &#092;"Nie można połączyć się z bazą\";
  59. mysql_close($baza);
  60. } else echo &#092;"Nie można połączyć się z serwerem MySQL\";
  61.  
  62. if ($wynik) {
  63. $list=&#092;"
  64. Aby potwierdzic rejestracje kliknij w ciagu 48 godzin na adres:
  65. http://filuniu.zapto.org/rejestracja.php?opcja=potwierdz&kod=$kod
  66. Jezeli nie chcesz sie rejestrowac, zignoruj ten list.
  67. &#092;";
  68. mail($email, &#092;"Rejestracja\", $list, \"From: <$twoj_adres>\");
  69. echo &#092;"<p>Aby dokończyć proces rejestracji odbierz e-mail</p>\";
  70. }
  71. } else $opcja=&#092;"\";
  72. }
  73.  
  74. if ($opcja==&#092;"\") {
  75.  
  76. // **************************************************
  77. // ********** 2. formularz zakładania konta
  78. // **************************************************
  79.  
  80. echo ('KONIEC
  81. <form action=\"rejestracja.php\" method=\"post\">
  82. <input type=\"hidden\" name=\"opcja\" value=\"test\" />
  83. <table>
  84. <tr>
  85. <td>login:*</td>
  86. <td><input type=\"text\" name=\"login\" value=\"podaj login\" /></td>
  87. </tr>
  88. <tr>
  89. <td>hasło:*</td>
  90. <td><input type=\"password\" name=\"haslo\" value=\"podaj haslo\" /></td>
  91. </tr>
  92. <tr>
  93. <td>e-mail:*</td>
  94. <td><input type=\"text\" name=\"email\" value=\"podaj email\" /></td>
  95. </tr>
  96. <tr>
  97. <td>imie i nazwisko:</td>
  98. <td><input type=\"text\" name=\"imie\" value=\"podaj imie\" /></td>
  99. </tr>
  100. <tr>
  101. <td>&nbsp;</td>
  102. <td><input type=\"submit\" value=\" OK, rejestruję się!\" /></td>
  103. </tr>
  104. </table>
  105. </form>
  106. KONIEC');}
  107.  
  108.  
  109. if ($opcja==&#092;"potwierdz\") {
  110. // **************************************************
  111. // ********** 3. potwierdzenie rejestracji, uaktywnienie uzytkownika
  112. // **************************************************
  113.  
  114. $kod = htmlspecialchars(stripslashes(trim($_GET[&#092;"kod\"])), ENT_QUOTES);
  115. if ($kod<>&#092;"\") {
  116. if ($baza = mysql_connect($mysql_host, $mysql_login, $mysql_haslo)) {
  117. if (mysql_select_db($mysql_baza)) {
  118. $wynik = mysql_query(&#092;"DELETE FROM $mysql_tabela
  119. WHERE data<=DATE_SUB(NOW(),INTERVAL 2 DAY) and status=1&#092;");
  120. $wynik = mysql_query(&#092;"UPDATE $mysql_tabela
  121. SET status='5', data=NOW() WHERE kod='$kod' and status=1&#092;");
  122. $wynik = mysql_query(&#092;"SELECT * FROM $mysql_tabela
  123. WHERE kod='$kod' and status=5&#092;");
  124. } else echo &#092;"Nie można połączyć się z bazą\";
  125. mysql_close($baza);
  126. } else echo &#092;"Nie można połączyć się z serwerem MySQL\";
  127. if (mysql_num_rows($wynik)==1) {
  128. $dane = mysql_fetch_array($wynik);
  129. echo &#092;"<p>Dziękujemy. Rejestracja została zakończona poprawnie.</p>\";
  130. }
  131. }
  132. if ($kod==&#092;"\" or mysql_num_rows($wynik)<>1) {
  133. echo &#092;"<p>Rejestracja nie może zostać dokończona -
  134. sprawdź czy link jest poprawny!</p>&#092;";
  135. }
  136. }
  137.  
  138.  
  139.  
  140. if ($opcja==&#092;"przypomnij\") {
  141.  
  142. // **************************************************
  143. // ********** 4. formularz przypominania danych
  144. // **************************************************
  145.  
  146. echo ('
  147. <p>Wpisz login użyty podczas rejestracji.
  148. Po chwili otrzymasz mailem nowe hasło.</p>
  149. <form action=\"rejestracja.php\" method=\"post\">
  150. <input type=\"hidden\" name=\"opcja\" value=\"wyslijhaslo\" />
  151. <table>
  152. <tr>
  153. <td>login:</td>
  154. <td><input type=\"text\" name=\"login\" value=\"$login\" /></td>
  155. </tr>
  156. <tr>
  157. <td>&nbsp;</td>
  158. <td><input type=\"submit\" value=\" przypomnij \" /></td>
  159. </tr>
  160. </table>
  161. </form>
  162. KONIEC');}
  163.  
  164.  
  165. function haslo() {
  166. $min = 6; $max = 12;
  167. for($i=0;$i<rand($min,$max);$i++) {
  168. $znak=chr(rand(48,122));
  169. if (eregi(&#092;"[0-9a-zA-Z]\",$znak)) $haslo .= $znak;
  170. else $i--;
  171. }
  172. return $haslo;
  173. }
  174.  
  175.  
  176. if ($opcja==&#092;"wyslijhaslo\") {
  177.  
  178. // **************************************************
  179. // ********** 5. zmiana hasla i wyslanie go do uzytkownika
  180. // **************************************************
  181.  
  182. $login = htmlspecialchars(stripslashes(trim($_POST[&#092;"login\"])), ENT_QUOTES);
  183. $hasloczytelne = haslo();
  184. $haslo = md5($hasloczytelne);
  185. if ($login<>&#092;"\") {
  186. if ($baza = mysql_connect($mysql_host, $mysql_login, $mysql_haslo)) {
  187. if (mysql_select_db($mysql_baza)) {
  188. $wynik = mysql_query(&#092;"UPDATE $mysql_tabela
  189. SET haslo='$haslo' WHERE login='$login' and status=5&#092;");
  190. $wynik = mysql_query(&#092;"SELECT * FROM $mysql_tabela
  191.  WHERE login='$login' and status=5&#092;");
  192. } else echo &#092;"Nie można połączyć się z bazą\";
  193. mysql_close($baza);
  194. }
  195. if (mysql_num_rows($wynik)==1) {
  196. $dane = mysql_fetch_array($wynik);
  197. $email = $dane[&#092;"email\"];
  198. $list=&#092;"Oto przypominane haslo: $hasloczytelne\";
  199. mail($email, &#092;"Przypomnienie hasla\", $list,\"From: <$twoj_adres>\");
  200. echo &#092;"<p>Hasło zostało wysłane mailem...</p>\";
  201. } else {
  202. echo &#092;"<p>Użytkownik o podanym loginie nie istnieje!</p>\";
  203. }
  204. }
  205. }
  206. ?>


zmiana.php

  1. <?
  2.  
  3.  
  4. $mysql_host = &#092;"host\";
  5. $mysql_login = &#092;"login\";
  6. $mysql_haslo = &#092;"haslo\";
  7. $mysql_baza = &#092;"baza1\";
  8. $mysql_tabela = &#092;"logowanie\";
  9.  
  10. $opcja = trim($_REQUEST[&#092;"opcja\"]);
  11.  
  12.  
  13. if ($opcja==&#092;"zmien\" and $_SESSION[\"zalogowany\"]==\"tak\") {
  14. $haslo = htmlspecialchars(stripslashes(trim($_POST[&#092;"haslo\"])), ENT_QUOTES);
  15. $imie = htmlspecialchars(stripslashes(trim($_POST[&#092;"imie\"])), ENT_QUOTES);
  16.  
  17. if (strlen($haslo)<6 or strlen($haslo)>50
  18.  or !eregi(&#092;"^[a-zA-Z0-9]+$\",$haslo)) { $blad++;
  19. echo &#092;"<span style=\"color:red;\">Hasło musi mieć od 6 do 50 znaków
  20. bez polskich liter i spacji!</span><br />&#092;";
  21. }
  22.  
  23. if ($blad==0) {
  24. $kod = uniqid(rand());
  25. $haslo = md5($haslo); // zaszyfrowanie hasla
  26.  
  27. if ($baza = mysql_connect($mysql_host, $mysql_login, $mysql_haslo)) {
  28. if (mysql_select_db($mysql_baza)) {
  29. $wynik = mysql_query(&#092;"UPDATE $mysql_tabela
  30. SET haslo='$haslo', imie='$imie' WHERE login='{$_SESSION[\"login\"]}'&#092;");
  31. } else echo &#092;"Nie można połączyć się z bazą\";
  32. mysql_close($baza);
  33. } else echo &#092;"Nie można połączyć się z serwerem MySQL\";
  34. if ($wynik) {
  35. echo &#092;"Dane zostały zmienione\";
  36. $_SESSION[&#092;"imie\"]=$imie;
  37. }
  38. } else echo &#092;"Dane nie zostały zmienione!\";
  39. }
  40.  
  41.  
  42. if ($_SESSION[&#092;"zalogowany\"]==\"tak\") {
  43.  
  44. if ($baza = mysql_connect($mysql_host, $mysql_login, $mysql_haslo)) {
  45. if (mysql_select_db($mysql_baza)) {
  46. $wynik=mysql_query(&#092;"SELECT * FROM $mysql_tabela WHERE
  47. login='{$_SESSION[\"login\"]}'&#092;");
  48. if (mysql_num_rows($wynik)==1) {
  49. $dane=mysql_fetch_array($wynik);
  50.  
  51. echo ('
  52. <form action=\"zmiana.php\" method=\"post\">
  53. <input type=\"hidden\" name=\"opcja\" value=\"zmien\" />
  54.  
  55. <table>
  56. <tr>
  57. <td align=\"right\">hasło:&nbsp;</td>
  58. <td><input type=\"password\" name=\"haslo\" /></td>
  59. </tr>
  60. <tr>
  61. <td align=\"right\">imie i nazwisko:&nbsp;</td>
  62. <td><input type=\"text\" name=\"imie\" value=\"zmień imie\" /></td>
  63. </tr>
  64. <tr>
  65. <td colspan=\"2\" align=\"right\">
  66. <input type=\"submit\" value=\"zmien\" /></td>
  67. </tr>
  68. </table>
  69. </form>
  70. '); }
  71. } else echo &#092;"Nie można połączyć się z bazą\";
  72. mysql_close($baza);
  73. } else echo &#092;"Nie można połączyć się z serwerem MySQL\";
  74.  
  75. }
  76.  
  77. ?>



mam nadzieje ze jakoś sie przydałem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) a z drugiej strony Coyot dzieki za te błędy przynajmniej musiałem troche mózgownicą ruszyć :]
Go to the top of the page
+Quote Post

3 Stron V  < 1 2 3
Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 14:37